专利摘要:
A method for a communication system comprising an electronic device and a plurality of gateways, the electronic device and each gateway being adapted to transmit and receive frames on a radio frequency band, each gateway being connected to the same central server, a first frame being transmitted by the electronic device to the central server, the frame comprising an identifier of the electronic device, each gateway receiving said frame and transmitting the received frame, in association with an identifier of the gateway, to the central server, a response time being predefined to respond to the first frame, the method for selection by the central server of one of the plurality of gateways for transmitting a second frame to the electronic device in response to the first frame.
公开号:FR3058293A1
申请号:FR1660505
申请日:2016-10-28
公开日:2018-05-04
发明作者:Yassir Sennoun;Gourrierec Marc Le
申请人:Sagemcom Energy and Telecom SAS;
IPC主号:
专利说明:

© Publication no .: 3,058,293 (to be used only for reproduction orders)
©) National registration number: 16 60505 ® FRENCH REPUBLIC
NATIONAL INSTITUTE OF INDUSTRIAL PROPERTY
COURBEVOIE © Int Cl 8 : H 04 W28 / 02 (2017.01), H 04 W88 / 16, H 04 L 29/06
A1 PATENT APPLICATION
©) Date of filing: 28.10.16. ® Applicant (s): SAGEMCOM ENERGY & TELECOM ©) Priority: SAS Simplified joint stock company - FR. @ Inventor (s): SENNOUN YASSIR and LE GOURRIE- REC MARC. (43) Date of public availability of the request: 04.05.18 Bulletin 18/18. ©) List of documents cited in the report preliminary research: Refer to end of present booklet (© References to other national documents ® Holder (s): SAGEMCOM ENERGY & TELECOM related: SAS Simplified joint-stock company. ©) Extension request (s): ©) Agent (s): LE GUEN & ASSOCIES Civil society professional.
P4J METHOD FOR SELECTING A GATEWAY FOR THE TRANSMISSION OF A FRAME.
FR 3 058 293 - A1
Method for a communication system comprising an electronic device and a plurality of gateways, the electronic device and each gateway being adapted to transmit and receive frames on a radio frequency band, each gateway being connected to the same central server, a first frame being sent by the electronic device to the central server, the frame comprising an identifier of the electronic device, each gateway receiving said frame and transmitting the received frame, in association with an identifier of the gateway, to the central server, a response timeout being predefined to respond to the first frame, the method allowing the central server to select a gateway from among the plurality of gateways for transmitting a second frame to the electronic device in response to the first frame.
100
i
The present invention relates to the general field of telecommunications. The invention relates more particularly to the field of wireless communications for communicating objects ("Machine to Machine - M2M" in English), and more specifically to the field of communication networks known as "long range wide networks" ("Long Range Wide -area network - LoRaWAN ”.
A wide area network with long range allows the connection of communicating objects and obeys different constraints than those of a traditional communication network such as a GSM network (“Global System for Mobile” in English) or a UMTS network (“Universal Mobile” Telecommunications System ”. In particular, this type of network frequently uses frequency bands called "ISM bands" (Industrial, Scientific and Medical). These frequency bands are therefore shared by several network operators, it is therefore necessary to minimize the consumption of the available radio resource, whether in the so-called "uplink" sense of a device terminal electronics to the core network) or in the so-called “downlink” direction (“downlink” in English, from the core network to a terminal electronic device).
FIG. 1 illustrates a conventional architecture of a communication network allowing a connected object 101 to communicate with a central server 110. The description below emphasizes the LoRa ™ standard (standard published by the “LoRa Alliance ”) But other communications technologies are possible. The connected object, or terminal, 101 is typically an electronic device comprising a radio transmitter. The radio transmitter is adapted to transmit and receive frames or messages via a carrier frequency among a plurality of carrier frequencies included in a predetermined frequency band, for example an ISM frequency band. When the radio transmitter transmits a frame, it can be received by one or more of the radio receivers or gateways 120, 12p, ..., 12N ("N" being greater than "0" and "p" between " 0 "and" N "). The connected object 101 being potentially mobile, unlike the gateways 120, 12p, ..., 12N which are placed at fixed points, a frame sent by the connected object 101 can be received by one or more gateways 120, 12p, ..., 12N. Each gateway 120, 12p, ..., 12N is connected, possibly via a network and a different technology, to a central server 110 called LNS server ("LoRa Network Server" in English). Each gateway 120, 12p, ..., 12N receiving a frame from the connected object 101 then transmits this frame to the central server 110. If a frame sent by the connected object 101 is received by "m" gateways 120 , 12p, ..., 12N, then the central server receives “m” copies or copies of this same frame retransmitted by said “m” gateways (except communication problem between a gateway and the central server 110 causing a loss of frame) . It should be noted that each gateway 120, 12p, ..., 12N is connected to the central server 110 by a communication network which may be different. Thus, as illustrated in FIG. 1, the gateway 120, 12p, ..., 12N is connected to the central server 110 via the network 131 and the network 130, possibly of different technology. Each communication network, for example the communication networks 130 or 131, allowing the connection of a gateway 120, 12p, ..., 12N to the central server 110 can therefore lead to a different frame transmission delay (or latency), transmission delay which can be linked to the technology used by the communication network, but also possibly to congestion of said communication network. The transmission delay is typically of the order of ten or a hundred milliseconds, but can reach several seconds in some cases.
When the central server 110 receives a frame from the connected object 101, the LoRa ™ standard defines a response time (hereinafter "RXDelay") so that the central server 110 can respond, by sending a frame, to the connected object 101. In fact, in order to reduce the energy consumption, the connected object 101 can, following the sending of a frame, go to standby, and not return to the listening for a possible response only at the expiration of the response time, and this for a given time. Possibly, the standard can even define several possible response times (for example "RX1 Delay" and "RN2 Delay" for the LoRa ™ standard), the connected object listening for a possible response at the end of each delay for a given time. The value of the response time (s) is set by an operator of the communication network. Typically, a response time value is in the range of one or more seconds.
Each transmitted frame includes a counter (“broker frame” in English, hereafter “FcntUp”), the value of the counter being incremented on each transmission of a new frame by the connected object 101. In the absence of response to a frame previously sent, the connected object 101 can retransmit said frame. According to the LoRa ™ standard, the value of the “FcntUp” counter for the re-transmitted frame is identical to that of the previously transmitted frame. In other words, a frame and a corresponding retransmitted frame have the same value of the “FcntUp” counter.
When the connected object 101 is connected to more than one gateway 120, 12p, ..., 12N, the central server 110 can therefore potentially receive several frames, retransmitted by several gateways 120, 12p, ..., 12N, these frames all comprising a counter with the same value: each frame can correspond either to a copy of the frame sent by the connected object 101 having passed through a different gateway 120, 12p, ..., 12N, or to a possible retransmission of the frame. Note that a re-sent frame can itself be received in several copies by the central server 110 if it passes through several gateways 120, 12p, ..., 12N.
When the central server 110 needs to send a frame to the connected object 101, for example in response to a frame sent by the connected object, the central server 110 must select a gateway from the gateways 120, 12p,. ., 12N so that this selected gateway transmits the frame sent by the central server 110 to the connected object. Frequently, the central server 110 receives the frames sent by a connected object only through a single gateway (meaning "uplink"). The central server 110 therefore selects this same gateway for the transmission of a frame to the connected object (meaning "downlink"). When the central server 110 receives several copies or copies of the same frame sent by the connected object 101 via different gateways, selecting a gateway from these different available gateways is not obvious. In a first approach, the central server 110 selects all the gateways that have transmitted the received frame. This approach is far from optimal since it unnecessarily requests several gateways and the connected object 101 receives several copies of the same frame. In a second approach, the central server 110 selects the gateway having transmitted the frame which was received first by the central server 110. This approach is however not optimal, since it tends to favor the selection of gateways being connected to the central server 110 by a network 130 or 131 offering a low latency, allowing a rapid transmission of the frames between these gateways and the central server 110. These gateways are therefore frequently selected and can be congested even when other gateways are little solicited.
It should also be noted that, in addition to the fact that the frequency bands used by a communication network illustrated in FIG. 1 are typically shared by several network operators, and must therefore be saved, each gateway must comply with constraints for using these frequency bands. Indeed, a mechanism called "duty cycle" is frequently implemented in order to limit the use of bandwidth by a gateway. This "duty cycle" mechanism defines a maximum ratio of transmission time over a given period for a carrier frequency included in the frequency band. This ratio can be defined by group of carrier frequencies or “sub-bands”.
It should also be noted that a standard such as the LoRa ™ standard imposes constraints on the choice of the carrier frequency to be used by a gateway selected for the transmission of a frame in response to a frame transmitted by a connected object 101 Thus, when a connected object 101 transmits a frame, it awaits either a response in a first response window, or a response in a second response window. The first response window is defined for example by a waiting time "RXDelayl" and the second response window by a waiting time "RXDelay2". A frame sent in response during the first response window must be sent on the same carrier frequency as the frame sent by the connected object. A frame sent in response during the second response window must be sent on a predetermined carrier frequency.
It is therefore necessary to propose a method allowing a central server 110 to select a gateway 120, 12p, ..., 12N from a plurality of possible gateways for the transmission of a frame to a connected object, the gateway respecting the different radio constraints imposed.
The invention relates to a method for a communication system comprising an electronic device and a plurality of gateways, the electronic device and each gateway being adapted to transmit and receive frames on a radio frequency band, each gateway being connected to the same server. central, a first frame being transmitted by the electronic device to the central server, the frame comprising an identifier of the electronic device, each gateway receiving said frame and transmitting the received frame, in association with an identifier of the gateway, to the central server , a response time being predefined for responding to the first frame, the method allowing the selection by the central server of a gateway from among the plurality of gateways for transmitting a second frame to the electronic device in response to the first frame, the method being executed by the waiter r central and comprising the steps of:
receive the first frame from a first gateway, determine a transmission time and a duration of the second frame to be transmitted in response, create a list in association with the identifier of the electronic device, the list including the identifier from the first gateway, trigger a waiting period during which, if the central server receives another frame sent by the electronic device from another gateway, then:
add the identifier of the other gateway having transmitted the frame in the list, at the end of the waiting time, choose at least one gateway whose identifier is included in the list, and, for this gateway:
retrieve frame transmission planning data by said gateway, and check whether selection criteria, functions of the transmission time and duration of the second frame as well as frame transmission planning data of the gateway, are met, if the selection criteria are met, then select said gateway for sending the second frame in response to the first frame to the electronic device.
Advantageously, the method allows a central server, for example an LNS server, receiving several copies of the same frame sent by an electronic device, to select a gateway to send back a response frame. Indeed, each copy of the frame sent by the electronic device having passed through a different gateway, the central server can potentially respond via all these gateways. The method advantageously allows the selection of a single gateway for the transmission of the response frame, which reduces the bandwidth consumption by avoiding sending said response frame via all the available gateways. The method also makes it possible to ensure that the selected gateway is capable of receiving the response frame and of retransmitting it to the electronic device in time, that is to say within the response time. The method also makes it possible to ensure the selection of a gateway whose frame transmission planning data is compatible with the scheduling of the transmission of the response frame for this gateway.
According to a complementary embodiment of the invention, each gateway transmitting a frame received in association with an identifier of the gateway and an indication of the reception power of the frame, during the step of adding an identifier d '' a gateway in the list, the indication on the reception power is added in association with the identifier of the gateway, and, during the step of choosing a gateway in the list, the choice depends on the power of reception associated with each identifier.
Advantageously, the method makes it possible to select a gateway whose link budget with the electronic device guarantees good transmission of the response frame.
According to a complementary embodiment of the invention, if, during the waiting period, the central server receives a frame whose reception power is less than a predetermined value, then said frame is ignored for the rest of the process.
Advantageously, the gateways with poor link quality to the electronic device are eliminated from the selection procedure. This ensures that only a gateway with a good link budget can be selected.
According to a complementary embodiment of the invention, the frame transmission planning data for each gateway comprising a parameter, known as a duty cycle, said parameter being a maximum ratio of a time spent by said gateway in transmitting frames on a given period, each gateway in the list being successively chosen to check the selection criteria, the step of selecting the gateway comprises a step of determining the value of the duty cycle at the time of the transmission of the second frame for a gateway and in that the selection is a function of the determined duty cycle value.
Advantageously, the method takes into account the constraints of compliance with the duty cycle for each gateway.
The invention also relates to a central server for a communication system comprising an electronic device and a plurality of gateways, the electronic device and each gateway being adapted to transmit and receive frames on a radio frequency band, each gateway being connected to the server. central, a first frame being transmitted by the electronic device to the central server, the frame comprising an identifier of the electronic device, each gateway receiving said frame and transmitting the received frame, in association with an identifier of the gateway, to the central server , a response time being predefined to respond to the first frame, the central server being adapted, in order to select a gateway from the plurality of gateways for transmitting a second frame to the electronic device in response to the first frame, for:
receive the first frame from a first gateway, determine a transmission time and a duration of the second frame to be transmitted in response, create a list in association with the identifier of the electronic device, the list including the identifier from the first gateway, trigger a waiting period during which, if the central server receives another frame sent by the electronic device from another gateway, then:
add the identifier of the other gateway having transmitted the frame in the list, at the end of the waiting time, choose at least one gateway whose identifier is included in the list, and, for this gateway:
retrieve frame transmission planning data by said gateway, and check whether selection criteria, functions of the transmission time and duration of the second frame as well as frame transmission planning data of the gateway, are met, if the selection criteria are met, then select said gateway for sending the second frame in response to the first frame to the electronic device.
The invention also relates to a communication system comprising an electronic device and a plurality of gateways, the electronic device and each gateway being adapted to transmit and receive frames on a radio frequency band, each gateway being connected to the same central server, a first frame being sent by the electronic device to the central server, the frame comprising an identifier of the electronic device, each gateway receiving said frame and transmitting the received frame, in association with an identifier of the gateway, to the central server, a response time being predefined to respond to the first frame, the central server being adapted, in order to select a gateway from among the plurality of gateways for transmitting a second frame to the electronic device in response to the first frame, for:
receive the first frame from a first gateway, determine a transmission time and a duration of the second frame to be transmitted in response, create a list in association with the identifier of the electronic device, the list including the identifier from the first gateway, trigger a waiting period during which, if the central server receives another frame sent by the electronic device from another gateway, then:
add the identifier of the other gateway having transmitted the frame in the list, at the end of the waiting time, choose at least one gateway whose identifier is included in the list, and, for this gateway:
retrieve frame transmission planning data by said gateway, and check whether selection criteria, functions of the transmission time and duration of the second frame as well as frame transmission planning data of the gateway, are met, if the selection criteria are met, then select said gateway for sending the second frame in response to the first frame to the electronic device.
The invention also relates to a computer program, which can be stored on a medium and / or downloaded from a communication network, in order to be read by a processor. This computer program includes instructions for implementing all or part of the process steps mentioned below, when said program is executed by the processor.
The invention also relates to an information storage medium comprising such a computer program.
The characteristics of the invention mentioned above, as well as others, will appear more clearly on reading the following description of an exemplary embodiment, said description being made in relation to the accompanying drawings, among which:
- Fig. 1 schematically illustrates a conventional architecture of a communication network known as a “long range wide area network”, typically conforming to a LoRa ™ standard
- Figs. 2, 3 and 4 schematically illustrate a method allowing the selection, by a central server of a communication network called "wide area network with long range", of a gateway among a plurality of gateways for transmitting a frame to an electronic device in response to a frame sent by this electronic device, according to a first embodiment of the invention;
- Fig. 5 schematically illustrates a method for updating frame transmission planning data for a gateway included in a communication network known as a “long range wide area network”, according to the first embodiment of the invention;
- Fig. 6 schematically illustrates a method of verifying that a frame to be transmitted can be inserted in the planning of frames to be transmitted from a gateway, according to the first embodiment of the invention;
- Fig. 7 schematically illustrates a method for verifying compliance with a cyclic report for scheduling the transmission of a frame by a gateway, according to the first embodiment of the invention;
- Fig. 8 schematically illustrates the hardware architecture of a server suitable for implementing a method making it possible to select a gateway from a plurality of gateways for the transmission of a frame to an electronic device of a so-called "wide area network" communication network long range ", according to an embodiment of the invention;
- Fig. 9 schematically illustrates a method for updating frame transmission planning data for a gateway included in a communication network called a “long range wide area network”, according to a second embodiment of the invention;
- FIG. 10 schematically illustrates a method of verifying that a frame to be transmitted can be inserted in the planning of frames to be transmitted from a gateway, according to the second embodiment of the invention.
The first embodiment of the invention described below corresponds to an embodiment in which each gateway can transmit only one frame at a time regardless of the number of frequencies or frequency sub-bands available. In other words, from the moment a frame is scheduled for transmission ίο on a first frequency included in a frequency sub-band, the gateway cannot simultaneously transmit another frame on another frequency, that this other frequency belongs to the same frequency sub-band or not. It is therefore not possible for two frames to overlap, even partially, regardless of the transmission frequency of each frame. This first embodiment is therefore suitable for inexpensive gateways. The descriptions in Figs. 2, 3, 4, 5, 6 and 7 correspond to this first embodiment of the invention.
In the second embodiment of the invention, each gateway is capable of transmitting at least two messages at the same time, each message being transmitted on a different frequency. Each gateway can transmit at least two messages simultaneously on at least two different frequencies, the at least two frequencies possibly being included in the same frequency sub-band. The descriptions in Figs. 9 and 10 correspond to the second embodiment of the invention.
Figs. 2, 3 and 4 schematically illustrate a method 200 allowing the selection, by a central server 110 of a communication network 100 known as “wide area network with long range”, of a gateway among a plurality of gateways 120, 12p, .. ., 12N for transmitting a frame to an electronic device 101 in response to a frame sent by this electronic device 101, according to the first embodiment of the invention. All or part of the process is executed by the central server 110.
Step 201 corresponds to the initialization of the central server 110, for example following its powering up. During this step 201, the central server 110 is adapted to load into a memory instructions allowing the execution of the method 200. During the step 201, connections can be established with the gateways 120, 12p, ..., 12N. The central server 110 may include a time synchronization function allowing gateways among the gateways 120, 12p, ..., 12N to synchronize in time. The central server 110 can include a time synchronization relay function. Typically, the central server 110 is an NTP (Network Time Protocol) server or relay allowing the gateways 120, 12p, ..., 12N connected to the central server 110 to benefit from time synchronization with the central server 110. The central server 110 can itself synchronize with an NTP server (not shown). According to a complementary embodiment, the gateways 120, 12p, ..., 12N are synchronized in time with an NTP server, possibly the same as that used by the central server 110 to synchronize. According to a complementary embodiment, the gateways 120, 12p, ..., 12N and / or the central server 110 synchronize in time via a technology of the GPS (“Global Positioning System” in English) or Glonass type.
In a next step 202, the central server 110 is waiting for the reception of a first frame. The first frame corresponds to a first frame sent by the electronic device 101, received by a first gateway from among the gateways 120, 12p, ..., 12N and retransmitted by said first gateway to the central server 110. The frame sent by the device electronics 101 includes an identifier associated with electronic device 101, which allows central server 110 to determine the origin of the frame. Each gateway, when it retransmits a frame, adds in addition to the retransmitted frame an identifier of the gateway. The central server 110 can therefore thus determine which gateway is at the origin of the retransmission of a frame. The frame sent by the electronic device 101 can include data corresponding to a priority level of the frame, or to the priority level of the expected response. Each gateway, when it retransmits a frame, adds in addition to the retransmitted frame a time stamp ("timestamp" in English) corresponding to the end time of the frame by the gateway. By neglecting the frame transmission time between the electronic device 101 and each gateway receiving the frame, the end time of reception of the frame by the gateway is considered to be an excellent approximation of an end time of transmission of the frame by the electronic device 101 (called "Teum"). It is considered below that the end time of transmission of the "Teum" frame by the electronic device 101 is taken equal to the time of end of reception of the frame by the selected gateway. In other words, as described below, when the central server 110 executes the method making it possible to determine whether or not a given gateway can transmit a frame, the time for the end of transmission of the "Teum" frame is chosen equal to the time of end of reception of the frame by said gateway. This end of reception time by the gateway is therefore noted below "Teum". This “Teum” timestamp corresponds to the time at which the gateway receives the frame. Each gateway, when it retransmits a frame, adds an indication of the reception power of the retransmitted frame, hereinafter called RSSI ("Received Strength Signal Indicator"). The RSSI can correspond to a measurement of the signal strength received by the gateway. The RSSI can correspond to the sum of a measurement of the signal strength received by the gateway, expressed in dBm, and of a signal to noise ratio, expressed in dB ("deciBel"). The signal to noise ratio, for the frame received, is determined by the gateway receiving the frame. The unit "dBm" (or "deciBel mdliwatts") corresponds to a power ratio in decibels ("dB") between the measured received power and a reference power of "1" milliwatt ("1 mW").
A response delay, which defines the delay between the end of the transmission of a frame by the electronic device and the start of a listening window by the electronic device 101 of a possible response, can be predefined. This response time is typically a parameter configured by an operator of the communication network 100. Two or more response times can be defined, for example “RXDelayl” and “RXDelay2”, each response time corresponding to the opening of a reception window for a predetermined duration on the electronic device 101. According to one embodiment of the invention, the response time is predefined and known to the central server 110. According to an alternative embodiment of the invention, information on the response time is included in the frame sent by the electronic device 101. When the central server 110 receives the first frame, the central server 110 determines a time stamp of the time of reception of the first frame by the central server 110, for example by taking the end time of reception of the first frame. This time stamp, by the central server 110, of the time of reception of the first frame, more precisely of the first copy received from the first frame, is denoted below “Trfcu”.
In a next step 203, the central server 110 extracts data from the first frame received. The central server 110 thus determines whether a response must be made to the first frame received and the priority of said response. In the present example described, two priority levels are considered: "priority" or "non-priority". According to another embodiment, several priority levels can be defined. Conversely, according to an alternative embodiment, all the frames are processed with the same priority level, corresponding for example to the "priority" level or to the "non-priority" level as described below. The central server 110 also determines the duration "d" of an expected response, that is to say the duration of a second frame to be transmitted in response to the first frame. The central server 110 can, to determine the duration of the second frame to be sent in response, determine the response alone or have to connect to another server, in order for example to find a requested information or that a calculation operation is carried out by a dedicated server for this task.
In the case where a response is awaited by the electronic device 101, in a step 204, the central server 110 determines whether the expected response is considered to have priority or not.
In the case where the second frame is non-priority, the central server 110 goes to step 205. In the case where the second frame has priority, the central server 110 goes to step 206.
In step 205, the central server 110 compares the RSSI of the frame received with a predetermined threshold. If the RSSI is below the threshold, then the frame is discarded. Thus, in the case where the RSSI is greater than the predetermined threshold, the central server 110 goes to step 206. In the case where the RSSI is less than the predetermined threshold, the central server 110 goes to step 207. Said otherwise , in the case of a non-priority response, the first frames received with a low RSSI are not taken into account, i.e. a gateway having received a first frame with a too low RSSI level (it that is, less than the predetermined threshold) cannot be selected next for sending a response.
In a step 206, the central server 110 stores in memory the identifier of the gateway having retransmitted the first frame in association with the identifier of the electronic device 101. In other words, the central server 110 creates or completes a list, in association with the electronic device 101, comprising the identifier of the gateway having retransmitted the first frame. The list can include, in association with the identifier of each gateway, the RSSI corresponding to the first frame received by the gateway. The central server 110 can manage several lists in parallel, each list corresponding to a different electronic device. During an iteration of step 206, the central server 110 can complete the list, for an electronic device 101, with an identifier corresponding to a gateway having retransmitted the first frame to the central server 110. Possibly, when the list is updated by the central server 110, the central server 110 can order the list according to a predetermined criterion. Possibly, the elements constituting the list are ordered according to a decreasing RSSI criterion. The first item in the list then corresponds to a gateway having received the first frame with the highest RSSI. The first element of the list therefore corresponds, a priori, to a gateway having the best quality of communication with the electronic device 101.
In a following step 207, the central server 110 determines the time elapsed since the time of reception of the first frame, during step 202, and the current or present time of the central server 110. If this elapsed time is greater than one predefined delay, called “LNS time”, then the central server 110 goes to step 209. Otherwise, the central server 110 goes to step 208.
During step 208, the central server 110 is awaiting receipt of a copy of the first frame sent by the electronic device 101 and retransmitted by another gateway. According to an alternative embodiment, the central server 110 is waiting for any frame transmitted by the electronic device 101, without necessarily the frame being the first frame. If a new frame is received, then the central server 110 repeats the process in step 204, that is to say in step 206 in the case of a priority frame and in step 205 in the case a non-priority frame. Otherwise, the central server 110 verifies, during step 207, that the "LNS time" delay has not elapsed. Thus, by the iteration of steps 208, 204, possibly 205, 206 and
207, the central server 110 constitutes a list, associated with the identifier of the electronic device, the list comprising the various gateways having retransmitted the first frame, or a copy of the first frame. These gateways constitute the candidate gateways for the selection of a gateway for the transmission of a second frame in response to the first frame.
It should be noted that in the case of a non-priority frame, the list may, after the expiration of the "LNS time" delay, be empty. In this case, no response will be given to the first frame. This is the case if all the copies of the first frame were received with an RSSI too low (i.e. below a predefined threshold). Indeed, for reasons of preservation of the bandwidth, it can be considered that it is useless, for a non-priority frame, to send a frame in response to the electronic device 101 if no gateway has received the first frame with a sufficient RSSI, the frame sent in response is unlikely to be correctly received regardless of the gateway selected.
In the case of a priority frame, the list always includes at least the gateway having retransmitted the first frame during step 202, more possibly other gateways if other copies of the first frame were received during the 'step
208.
In the case of a non-priority frame, the list can include the gateway having retransmitted the first frame during step 202, and possibly other gateways if other copies of the first frame were received during the step 208, only those for which the RS SI is greater than a predefined threshold being retained in the list.
After the expiration of the "LNS time" delay, the central server 110 goes to step
209.
In step 209, the central server 110 determines whether the second frame to be sent in response to the first frame has priority. If so, the central server 110 proceeds to step 301, the continuation of the steps being described in FIG. 3. If not, the central server 110 proceeds to step 401, the continuation of the steps being described in FIG. 4.
In both cases, the central server 110 can access data for scheduling the transmission of frames by a gateway, for each gateway 120, 12p, ..., 12N. This data is for example recorded on a memory of the central server 110. Possibly, this data is recorded on each gateway 120, 12p, ..., 12N, the central server 110 being able to find this data on each gateway 120, 12p, .. ., 12N. This frame transmission planning data by the gateway "p" can correspond to a list "ListTrx" and to a list "Listd", each list being associated with said gateway. The central server 110 maintains, for each gateway 120, 12p, ..., 12N, a list (or matrix) "ListTrx" and a list (or matrix) "Listd" corresponding. The list "ListTrx" corresponds to a list of the transmission times of frames scheduled for transmission by the gateway and the list "Listd" includes, for each frame planned in the list "ListTrx", a transmission time of said frame. In other words, for each gateway 120, 12p, ..., 12N, the central server 110 maintains two lists. The first list, "ListTrx", includes the transmission times of the frames that the gateway must send, and, in a second list "Listd", the transmission times of said frame. Thus, the central server 110 keeps up to date, for each gateway 120, 12p, ..., 12N, the planning of the frames to be transmitted. Thus, for a given gateway, “ListTrx (j, k)” corresponds to the transmission time of the “j” -th frame to be transmitted on the frequency sub-band “k” by said gateway and “Listd (j, k) ”to the duration of said“ j ”-th frame for the frequency sub-band“ k ”. The central server 110 stores as many pairs of lists "ListTrx" and "Listd" as there are gateways 120, 12p, ..., 12N, that is to say here "N" couples of lists "ListTrx "And" Listd ". Each pair corresponds to the frame transmission planning data of a given gateway. Similarly, we denote "ListTrx (k)" the list (or vector) comprising all the transmission times of the frames planned on the frequency band "k". We also note “Listd (k)” the list (or vector) of the transmission durations of all the frames scheduled on the frequency sub-band “k”.
In the case where the second frame to be sent in response to the first frame has priority, the central server 110 executes steps 301 to 310 or 320 of the method 200 illustrated in FIG. 3. These different steps, described below, allow you to choose at least one gateway whose identifier is included in the list, and, for this gateway:
- retrieve data for scheduling the transmission of frames by said gateway, and,
- check whether the selection criteria, functions of the transmission time and the duration of the second frame as well as the gateway frame transmission planning data, are fulfilled, and, if the selection criteria are fulfilled, the central server 110 then selects said gateway for sending the second frame in response to the first frame to the electronic device.
Thus, in a step 301, the central server 110 initializes a counter "i" to the value "1".
In a following step 302, the central server 110 chooses the gateway "i" from the list produced during step 206. In other words, during the first iteration, "i" being equal to "1", the central server 110 choose the first gateway in the list. Possibly, this first gateway is the one with the highest RS SI as described above. The central server 110 finds, for the gateway "i", planning data for the transmission of frames by the gateway "i". This frame transmission planning data corresponds for example to the pair "ListTrx" and "Listd" for the gateway "i".
In a next step 303, the central server 110 determines whether there is enough time left for the second frame to be transmitted to be transmitted to the gateway "i" for transmission. For this, the central server 110 determines the value of the following sum “S”:
S = Trfcu + LNS time + process time + transmission time, with:
"Trfcu": parameter corresponding to the time stamp, by the central server 110, of the time of reception of the first frame, more precisely of the first copy received from the first frame, "LNS time": parameter corresponding to a predefined delay d 'waiting for the reception of possible copies of the first frame; corresponds to the test in step 207, "process time": parameter corresponding to a predefined time. This predefined delay corresponds to an estimate, possibly increased, of the execution time of the process 200, from which the "LNS time" delay is subtracted (so as not to count it twice). In other words, estimated time of the gateway selection process once the "LNS time" period has expired, "transmission time": parameter corresponding to the time for transmission of a frame sent by the central server 110 to the gateway "I".
The timestamp "Trfcu" is determined in step 202. The value of "LNS time" is predefined. "Process time" is an estimate of the time required to execute the gateway selection process after step 209 has been reached. "Transmission time" corresponds to the time required for a second frame to be transmitted from the central server 110 to the gateway "i". In other words, "transmission time" corresponds to the duration of travel of a second frame from the central server 110 to the gateway "i". According to the embodiment, the “transmission time” parameter can correspond to an average value of the travel time between the central server 110 and the gateway “i”. This average value can be determined by using a time stamp of acknowledgment frames sent by the gateway "i" when the central server 110 sends a frame. The central server 110 can then determine a duration of the round trip by making the difference between a time stamp of the transmission time of a frame and a time stamp of a frame received in acknowledgment. The central server 110 can determine a weighted or exponential moving average of the travel times to ultimately determine a "transmission time" value for each gateway "i". A default value can be used.
The sum "S" corresponds to an estimate of the closest possible transmission time by the gateway "i" of the second frame. It is therefore necessary to ensure that this closest transmission time is well before the opening time of the reception window for the electronic device 101. Once the sum "S" of these parameters has been determined, the central server 110 therefore compares this sum "S" with the time stamp of the time for opening the reception window of the electronic device 101, hereinafter called "Trx", an estimate of which is given by:
Trx = Teum + RXDelay, with:
- “Teum”: time for the end of reception of the frame by the gateway “i”, which is used in the method as being an estimate of the time for the end of transmission of the first frame by the electronic device 101. Indeed, this time for the end of transmission of the first frame by the electronic device 101 is not directly known.
- "RXDelay": response time, previously described.
According to a complementary embodiment of the invention, several values of the response time "RXDelay 1" and "RXDelay2" can be used by the method 200. The method 200 must therefore be executed a first time with the value of the response delay equal to "RXDelay 1" (the value of "RXDelay 1" being less than that of "RXDelay2"), then, if no gateway can be selected (that is to say step 320 or 420), the method 200 must be resumed from step 209 with the response time value equal to "RXDelay2" instead of "RXDelay 1". Several values of the response time can thus possibly be used, the method being repeated in step 209 with a new response time if no gateway can be selected for a given value of the response time.
If the sum "S" is less than "Trx", this means that a second frame may well be sent to the gateway "i" for transmission in time so that the gateway can transmit the second frame when the window opens. receiving device 101.
If the sum "S" is greater than "Trx", this means that a second frame cannot be sent to the gateway "i" so that this frame can be sent in time for the opening of the reception window of the electronic device 101. In other words, the gateway "i" is not able to transmit the second frame in the reception window of the electronic device 101, the central server 110 not being able to transmit it on time. .
It should be noted that the value of “LNS time”, corresponding to the predefined waiting time for reception of possible copies of the first frame, is predefined and chosen so that a “transmission time” of value average can allow the sending of a second frame to a gateway in time.
Step 303 therefore makes it possible to verify whether, in the event that the gateway "i" is selected at the end of the method 200, the central server 110 can indeed transmit the second frame to said gateway "i" in time for the gateway "i" can transmit the second frame during the reception window of the electronic device 101.
If this is not the case, this means that the gateway "i" cannot be selected and the central server 110 goes to step 306. If this is the case, the central server 110 goes to step 304 to verify another condition for gateway "i" to be selected.
In step 304, described in more detail below in FIG. 6, the central server 110 determines whether the gateway "i" is able to send a second frame during the reception window of the electronic device 101. In this step 304, the central server 110 verifies that no other frame already scheduled for transmission by the gateway "i" on any frequency does not collide or overlap with the second frame. In other words, the central server 110 verifies that it is possible to insert the second frame into the frame planning data without causing a collision between two frames. By collision, we mean, at a given time, the need to transmit two different frames by the same gateway, which is not manageable by said gateway.
If the second frame does not collide with a frame previously scheduled for transmission by the gateway "i", then the central server 110 goes to step
305. Otherwise, it means that the gateway "i" cannot be selected and the central server 110 goes to step 306.
In step 305, the central server 110 determines whether the planning of the second frame for transmission by the gateway "i" allows said gateway to comply with a possible duty cycle which would be imposed on the frequency to be used for the transmission of the second frame. In other words, during this step 305, the central server 110 verifies that the gateway has sufficient time in terms of duty cycle to send the second frame of duration “d”. This step 305 is described below in more detail in FIG. 7. If the central server 110 determines that the scheduling of the transmission of the second frame does not call into question the respect by the gateway "i" of a cyclic report, then the central server 110 proceeds to step 310. Otherwise, it means that the gateway "i" cannot be selected and the central server 110 goes to step
306.
During step 310, the central server 110 selects the gateway "i" for the transmission of the second frame in response to the first frame transmitted by the electronic device 101. The frame transmission planning data for the gateway “I” are updated to integrate the data relating to the second frame, that is to say:
- insertion of the second frame in the lists "ListTrx" and "Listd" at a position "j" corresponding to the scheduled transmission time, that is to say between a frame planned previously and a frame planned later, if they exist,
- "ListTrx (j, k)", with "j" corresponding to the position of the frame, position dependent on the scheduled transmission time, and "k" corresponding to the frequency sub-band comprising the transmission frequency of the frame, has the value "Trx" (ie "Teum + RXDelay"),
- "Listd (j, k)", with "j" corresponding to the position of the frame, position dependent on the scheduled transmission time, and "k" corresponding to the frequency sub-band comprising the transmission frequency of the frame has the value "d".
The method 200 ends after step 310. The method 200 is executed again when a new first frame is received from the electronic device 101. Another instance of the method 200 can be executed by the central server 110 if it receives a first frame from another electronic device. It is then necessary to select, in parallel, another gateway, possibly the same one, for the possible emission of a response to the other electronic device.
In the event that one of the constraints checked during steps 303, 304 and 305 is not checked by the central server 110, the central server 110 goes to step
306. Step 306 corresponds to the incrementation of the value of "i", that is to say the choice of the next gateway in the list established during step 206. Step 307 corresponds to a checking that there is indeed a gateway to check (steps 303, 304 and 305) in the list. If all the gateways in the list have been reviewed by the central server 110, that is to say if "i" is greater than the number of elements in the list, then the central server 110 goes to step 320. Otherwise, the central server 110 repeats the method 200 in step 302 with the next gateway in the list in order to check whether this gateway fulfills the constraints verified during steps 303, 304 and 305. It should be noted that all of the gateways are not necessarily verified (that is to say that the central server 110 does not execute steps 303 to 305) as soon as a gateway fulfills the constraints. The method therefore allows rapid selection of the gateway.
Step 320 corresponds to the end of the method 200, no gateway having been selected. The central server 110 cannot then transmit a second frame. Possibly, the central server 110 records in an event log ("log" in English) the failure to select a gateway. An error message may be issued to a server.
Thus, in the hypothesis where the list of gateways established during step 206 is ordered according to the descending order of the associated RSSIs, the method detailed in FIG. 3 selects the gateway that fulfills the transmission constraints and has the best RSSI for the transmission of the second frame. This method is used by the central server 110 for the selection of a gateway for the transmission of a priority frame.
Fig. 4 details the continuation of the method 200, after step 209, when the frame to be transmitted is non-priority. The process detailed in FIG. 4, intended for the case of a non-priority frame, differs from the process detailed in FIG. 3, intended for the case of a priority frame in that all the gateways included in the list are verified, and that the gateway selected in fine is that fulfilling the transmission constraints and having the greatest credit in terms of duty cycle, i.e. with the highest duty cycle value at the time of transmission. It should also be noted that the list established during step 206 does not include a gateway whose RSSI is less than a predefined value (cf. step 205) in the case of a non-priority frame.
In a step 401, following step 209, in the case of a non-priority frame, the central server 110 defines a variable "i", initialized with the value "1" and a variable "maxC", initialized with the value "d", corresponding to the duration of the second frame to be transmitted. The central server 110 then proceeds to step 402.
In step 402, the central server 110 finds the data for scheduling the transmission of frames for the gateway "i". The central server 110 then proceeds to step 403.
Step 403 is similar to step 303. During this step, the central server 110 determines whether the central server 110 is able to transmit the second frame in time to the gateway "i". The description for step 303 applies mutatis mutandis. If the central server 110 is able to transmit the second frame in time to the gateway "i", the central server 110 goes to step 404. Otherwise, the central server 110 goes to step 407.
Step 404 is similar to step 304 and is described in more detail in Fig. 6. During this step, the central server 110 determines whether the central server 110 is able to schedule the transmission of the second frame by the gateway "i" without causing a collision of frame transmission with a previously scheduled frame. If this is the case, the central server 110 goes to step 405. Otherwise, the central server 110 goes to step 407.
Step 405 is similar to step 305 and is described in more detail in Fig. 7, with the exception of the test performed by the central server 110 at the end of the stage. During this step, the central server 110 determines whether the gateway is able to send the second frame while respecting a possible duty cycle. However, in order to ultimately select the gateway "i" having the greatest possible duty cycle credit at the end of steps 402 to 409, the central server 110 compares the value of "maxC" with the duty cycle of the gateway "I" at the end of step 405. Thus, the gateway "i" becomes, during step 406, the possible candidate to be the gateway selected by the method 200 only if it has a credit of duty cycle greater than the duty cycle credit of the previous candidate gateway to be selected, which credit is stored in the variable "maxC". The previous candidate gateway to be selected is the one whose identifier is stored in the "BestGwt" variable. If the duty cycle credit of the gateway "i" ("C (j, Trx)", with "j" corresponding to the frequency sub-band comprising the frequency on which the second frame must be transmitted, as described below after) is greater than the duty cycle credit of the previous candidate gateway to be selected, that is to say “maxC”, the central server 110 goes to step 406. Otherwise, the central server 110 goes to step 407.
In a step 407, the variable "i" is incremented ("i = i + 1"). The central server 110 then proceeds to step 408 in order to verify that the value of "i" has not exceeded the number of elements included in the list. If "i" corresponds to a gateway in the list, then the central server 110 resumes the process in step 402 with the new value of the variable "i". In other words, steps 403 to 405 or 406 are repeated for the next gateway in the list. If the value exceeds the number of elements in the list, this indicates that all the gateways in the list have passed through steps 402 to 405 or 406. The central server 110 then goes to step 409.
In step 406, the central server 110 keeps in memory the gateway "i", the latter being a candidate to become the selected gateway. In other words, the central server 110 stores in memory, in a variable "BestGwt", the identifier of the gateway "i". During this same step, the central server 110 updates the variable “maxC” with the value of the duty cycle calculated during step 405 for the gateway “i” for the carrier frequency “j” (or sub-band if the carrier frequencies are grouped into sub-bands) at the planned transmission time "Trx" of the second frame. In other words, "maxC = C (j, Trx)", with:
"C" the duty cycle function for the given gateway "i", "j" the sub-band considered, the sub-band "j" comprising the carrier frequency of transmission of the second frame, and, "Trx" the transmission time of the second frame, that is to say the opening time of the reception window of the electronic device 101.
In a step 408, the central server 110 determines that all the gateways in the list have passed through steps 402 to 405 or 406, that is to say that the central server 110 has executed these steps for all the values of " i ”corresponding to an item in the list. The central server 110 then goes to a step 409.
In step 409, the central server 110 determines the value of the variable "BestGwt", which then corresponds to the identifier of the gateway among all the gateways in the list which:
- responds to the transmission constraints of the frame (non-collision, second frame transmitted on time and sufficient duty cycle), and is associated with the highest duty cycle credit.
This last criterion makes it possible, for a non-priority frame, to select the gateway capable of transmitting the second frame having the greatest credit in terms of duty cycle, this criterion being strict. The gateways with little duty cycle are therefore preserved. Thus, if the “BestGwt” variable includes the value of an identifier of a gateway, then, in a step 410, similar to the step 310 described above, the gateway corresponding to this identifier is selected. Otherwise, in a step 420, similar to step 320, the central server 110 is not able to select a gateway; an error message is generated.
According to a complementary embodiment of the invention, and in order to simplify the implementation of the method 200, all the second frames are considered to be "priority". The method 200 is simplified because the steps 204, 205, and 401 to 420 are not executed by the central server 110. Alternatively, the method 200 is simplified by considering all the second frames as being "non-priority". The method 200 is then simplified since steps 204 and 301 to 320 are not executed by the central server 110.
Fig. 5 schematically illustrates a method 500 for updating frame transmission planning data for a gateway from among the gateways 120, 12p, ..., 12N included in a communication network 100 known as a “long range wide area network”, according to one embodiment of the invention. This method is executed periodically or on demand by the central server 110 in order to update the value of the duty cycle for a gateway and for a frequency sub-band “j”. This process takes as argument the current time "t", the last determined value of the duty cycle "C (j, Tc (j))" with:
"C" duty cycle function for the given gateway, "j" the frequency sub-band, and, "Tc (j)" last reference time used for the given gateway and for the frequency sub-band "j" .
In general, the value of the duty cycle at a given time "T + t" compared to the value of the duty cycle at time "T" is expressed by:
C (j, T + t) = min (C0 (y); C (y, T) + t - (2 - DC (y)). Zk = i Listd (k, j)), with:
"C (j, t)" the value of the duty cycle for the sub-band "j" at the instant "t", "min (a, b)" function selecting the minimum value between the arguments "a" and " b ”,“ CO (j) ”a maximum credit in cyclic ratio, expressed for an arbitrary reference period of one hour (3600 seconds). So we have :
"CO (j) = 3,600,000 * DC (j)";
with CO (j) expressed in ms (milliseconds), "j" the frequency sub-band and DC (j) the duty cycle to be observed for the sub-band "j", expressed as a percentage ("%"). Thus, for DC (j) = 10% (10% duty cycle to be observed on the subband "j"), the maximum credit credit in duty cycle "CO (j)" is equal to "360,000 ms" (c (i.e. 6 minutes for a reference time of one hour).
“DC (j)” is the duty cycle to be respected, that is to say the ratio between the sum of the times of transmission of frames and the time of non-transmission of the gateway for the carrier frequencies included in sub-band "j"; DC (j) is expressed as a percentage.
“Listd (k, j)” has been previously described and corresponds to the duration of transmission, by the gateway considered, of a frame “k” planned on the frequency sub-band “j”, “N” corresponds to total number of frames scheduled for transmission by the gateway considered on the sub-band "j" during the time range between "T" and "T + t". Possibly, only frames are taken into account for which the start time of the broadcast and the end time of the broadcast are included in the time range between "T" and "T + t".
Step 501 corresponds to the loading of the data corresponding to the gateway for which the duty cycle for the subband "j" is to be updated in the memory of the central server 110. This data can be recorded on the central server 110 itself. The value of a variable "i" is initialized to "1" before going to step 502.
In step 502, the central server 110 determines whether "i" has exceeded the number of elements included in the list "ListTrx (j)" comprising all the frames scheduled for the gateway considered on the sub-band "j". If "i" is less than the number of scheduled frames, then the central server 110 goes to step 503. Otherwise, it goes to step 507.
In step 503, the central server 110 determines whether the current time "t", corresponding to the local time of the central server 110, possibly synchronized via NTP, is less than the transmission planning time of the frame "i". If the frame is scheduled for a subsequent or simultaneous transmission at the current time "t", that is to say if "t <= ListTrx (i, j)" then the central server 110 goes to step 507. If on the contrary "t> ListTrx (i, j)", then the central server 110 goes to step 504.
Step 503 makes it possible to determine whether the current time "t" can correspond to a moment of transmission of a frame "i". Step 504 makes it possible to ensure that the current time is after the end of transmission of the frame "i". In other words, if "ListTrx (i, j) + Listd (i, j) <t", then the current time "t" is after the end of transmission of the frame "i", transmitted at the time "ListTrx ( i, j) ”and having a transmission duration“ Listd (i, j) ”. The central server 110 then proceeds to step 508 in order to increment the value of "i" by "1". Then, following step 508, the central server 110, after having checked in a new step 502 that the number of frames has not been exceeded, starts again step 503 with the next frame. If on the contrary “ListTrx (i, j) + Listd (i, j)> = t”, knowing that the central server 110 has determined during step 503 that “t> ListTrx (ij)”, this means that the current time "t" corresponds to a time of transmission of the frame "i". In this case, in a next step 505, the central server 110 stores "N = i - 1". Then in a step 506, the central server 110 defines a variable "Tref", corresponding to a reference time for the calculation of the duty cycle, with "Tref = t". In other words, in step 506, the central server 110 defines the reference time "Tref" as being equal to the time "ListTrx (i, j)" corresponding to the transmission of the frame "i". The "N" -th frame of the list "ListTrx (j)" corresponds to the last frame scheduled for transmission by the gateway considered before the reference time "Tref". Thus, these “N” frames will have to be considered for the calculation of the duty cycle.
In step 507, the reference time "Tref" is defined equal to the current time "t". This corresponds to a situation where the current time does not correspond to a moment of transmission of an "i" frame.
Following steps 506 and 507, the central server 110 goes to step 510. During step 510, the central server 110 determines the value of the variable "Tc (j)". "Tc (j)" corresponds to the reference time "Tref" used during the previous iteration of the update process 500 for the gateway considered for the sub-band "j", as described below in the description of the step 512. During the first iteration of the method 500, the value of "Tc (j)" is initialized to "zero", the default value. In this case, if "Tc (j) = 0", then the central server 110 goes to step 511 in order to determine if frames are scheduled for transmission before the reference time. In other words, if "N = 0", then, in a step 513, the central server 110 defines "Tc (j) = Tref". In other words, no frame being scheduled for transmission before the reference time "Tref", the value of "Tc (j)" can be set to "Tref" without modifying the value of the duty cycle, since it is already at its maximum value. If on the contrary “N” is different from “zero”, this means that the frames to be sent must be taken into account for the calculation of the duty cycle, and, in a step 512, the central server 110 defines “Tc (j) = ListTrx (lj) ”in order to start the calculation of the duty cycle on transmission of the first frame.
Following step 512 or 513, or else, if in step 510 "Tc (j)" is different from "zero", the central server 110 goes to step 520. Step 520 corresponds to the step of calculating the duty cycle “C (j, Tref)”:
NOT
C (J, Tref) = min (C0 (j); C (j, Tc (j) + Tref - Tc (j) - (2 - DC (j)). Σ Listdfij, k) k = l
In a following step 512, the central server 110 updates the frame transmission planning data for the gateway considered for the frequency sub-band "j". ". This update includes the deletion of the first "N" elements from the lists "ListTrx (j)" and "Listd (j)" for the sub-band "j". The central server 110 stores the reference time and the duty cycle for this reference time for a future iteration, that is to say:
"Tc (j)" takes the value "Tref", and, "C (j, Tc (j))" takes the value "C (j, Tref)", for later use of these two updated values of "Tc (j)" and "C (j, Tc (j))" in a new iteration of the method 500 for the gateway considered for the sub-band "j".
Fig. 6 schematically illustrates a method 600 of verifying that a frame to be transmitted can be inserted in the planning of frames to be transmitted from a gateway among the gateways 120, 12p, ..., 12N, according to an embodiment of the invention .
The method 600 illustrated in FIG. 6 corresponds to steps 304 or 404 of method 200 for a gateway "p" having to plan the transmission of a frame on a frequency included in a frequency sub-band "j". ".
In a step 601, the central server 110 finds the data for scheduling the transmission of frames for the gateway considered for each frequency sub-band, including the frequency sub-band "j". This data may have previously been retrieved by the central server 110 during step 302 or 402. During this step, a variable "k" is initialized to the value "zero".
In a step 602, the central server 110 determines whether the value of the variable "k" is less than the number of frequency sub-bands used by the gateway "p" ("NbSubBands" for the gateway "p" in FIG. 6). If “k” is greater than this value, this means that all the frequency sub-bands have been checked without an overlap being detected, the central server 110 then proceeds to step 615. Otherwise, if “k” is less than the number of frequency sub-bands used by the gateway "p", the central server 110 goes to step 603.
In a step 603, the central server 110 increments the value of the variable "k" by "1" and initializes, or reinitializes, the value of a variable "i" to "1". The central server 110 passes to a test 604.
During step 604, the central server 110 verifies that "i" is less than the number of frames scheduled for transmission on the frequency sub-band "k", "that is to say the number of elements in the ListTrx (k) list for the gateway "p". ". If so, the central server 110 proceeds to step 605, if not, step 607.
In step 605, the central server 110 determines whether the transmission time of the second frame "Trx" is less than the transmission time "ListTrx (i, k)" of the scheduled frame "i" for the sub- frequency band "k". If yes, the central server 110 goes to step 606, if not, it goes to step 609. If "Trx" is less than the transmission time of the scheduled frame "i" for the frequency sub-band "K" means that the second frame must be sent before the frame "i". It is then necessary to then check whether the delay between the time "Trx" and the start of the transmission of the frame "i" for the frequency band "k" is sufficient for the transmission of the second frame knowing that the duration d the second frame broadcast is "d".
This verification is done during step 606. Thus, if "Trx + d" is greater than "ListTrx (i, k)", then there is not sufficient time for the transmission of the second frame before the scheduled transmission of the frame "i" for the frequency sub-band "k", and the central server 110 goes to step 620. Step 620 corresponds to the fact that the gateway considered "p" is not not available for transmission of the second frame. The method 200 then continues with step 306 in the case of a second priority frame, and with step 407 in the case of a second non-priority frame.
Following step 606, if “Trx + d” is less than “ListTrx (i, k)”, this means that the delay between “Trx” and the start of the transmission of the frame “i” for the sub frequency band "k" is sufficient for the transmission of the second frame of duration "d". The central server 110 then proceeds to step 607.
During step 607, the central server 110 determines whether the value of the variable "k" is equal to "j", "j" corresponds to the sub-band "j" comprising the transmission frequency of the frame to plan. If this is the case, the central server 110 goes to step 608, if not directly to step 602.
During step 608, the central server 110 110 stores for a variable "N" the value "i - 1", "N" corresponding to the last frame scheduled for transmission on the sub-band "j" before the second frame , or, in other words, to the scheduled frame, on the sub-band "j", to be sent just before the second frame. The central server 110 then returns to step 602.
During step 609, the central server 110 determines whether the transmission time of the second frame "Trx" corresponds to a moment during which the gateway is scheduled for the transmission of the frame "i" for the sub-band of frequency "k" of duration "Listd (i, k)". If "Trx" is less than "ListTrx (i, k) + Listd (i, k)", knowing from step 605 that "Trx" is greater than "ListTrx (i, k)", then "Trx" corresponds at a time of transmission of the frame "i" for the frequency sub-band "k" and the central server 110 goes to step 620. Otherwise, the central server 110 goes to step 610, corresponding to l incrementation of the variable "i", with "i = i + 1", then returns to step 604.
Fig. 7 schematically illustrates a method 700 of verifying compliance with a cyclic report for planning the transmission of a frame by a gateway, according to one embodiment of the invention.
The method 700 illustrated in FIG. 7 corresponds to steps 305 or 405 of the method 200.
In a step 701, the central server 110 finds the data for scheduling the transmission of frames for the considered gateway and the sub-band "j". This data may have previously been retrieved by the central server 110 during step 302 or 402.
The central server 110 finds the value of the variable "Tc (j)" as defined during the description of FIG. 5, steps 510 and following. "Tc (j)" corresponds to the last reference time used for the given value gateway for the last update of its duty cycle on the sub-band "j". The central server 110 also finds the value of "N" as determined during steps 304 or 404, as described in FIG. 6, step 608.
In a step 702, if "Tc (j) = 0" then the central server 110 goes to step 703, otherwise it goes to step 706. In step 703, if "N = 0", then the central server 110 goes to step 705, otherwise it goes to step 704.
In step 704, the central server 110 defines the value of the reference time "Tref" as being equal to "ListTrx (lj)" and then the central server 110 proceeds to step 707.
In step 705, the central server 110 defines the value of the reference time "Tref" as being equal to "Trx" and then the central server 110 proceeds to step 707.
In step 706, the central server 110 defines the reference time "Tref" as being equal to "Tc (j)". Then the central server 110 proceeds to step 707.
Steps 702 to 706 follow the same logic as steps 510 to 513.
In step 7107, the central server 110 determines the value of the duty cycle over the transmission time of the second frame "Trx", with:
NOT
C (j, Trx) = min (C0 (y); C (j, Tc (j) + Trx - Tref - (2 - DC (y). ^ Listd (k, j)) k = l "C (j , Trx) "is the value of the duty cycle at time" Trx "for the subband" j ". In other words, C (j, Trx) represents the duty cycle credit (" Duty Cycle ") available at time" Trx "for the given gateway and for the sub-band "j". This credit represents time available for the transmission of frames on the sub-band "j" by the gateway concerned.
If this credit C (j, Trx) is greater than "d", then the gateway concerned has enough credit to send the second frame. The method 200 continues with step 310 in the case of a second priority frame, and with step 406 in the case of a second non-priority frame. In the case of a non-priority frame, step 708 is modified in the sense that the comparison of the credit in cyclical relationship is made with the variable “maxC” and not with “d” in order, in fine, to select the gateway with the greatest credit on a cyclical basis.
Otherwise, the gateway does not have sufficient credit for the transmission of the second frame. The method 200 continues with step 306 in the case of a second priority frame, and with step 407 in the case of a second non-priority frame. In the case of a non-priority frame, step 708 is modified in the sense that the comparison of the credit in cyclical relationship is made with the variable “maxC” and not with “d” in order, in fine, to select the gateway with the greatest credit on a cyclical basis.
Fig. 8 schematically illustrates the hardware architecture of a server 800, for example the central server 110, suitable for implementing the method making it possible to select a gateway from a plurality of gateways for the transmission of a frame to an electronic device 101 of a communication network 100 known as a “long range wide area network”, a method described in FIGS. 2, 3 and 4. The server 800 comprises, connected by a communication bus: a processor or CPU (“Central Processing Unit” in English) 801; a memory MEM 802 of type RAM (“Random Access Memory” in English) and / or ROM (“Read Only Memory” in English), a network module NET 803, a storage module STCK 804 of type internal storage and possibly of other modules 805 to 80N of different types. The STCK 804 storage module can be of the HDD ("Hard Disk Drive") or SSD ("Solid-State Drive") type, or of the external storage medium reader type, such as a card reader. SD ("Secure Digital" in English). The processor CPU 801 can record data on the storage module STCK 804 or read data recorded on the storage module STCK 804. This data can correspond to configuration parameters of the server 800 or to information received for example in a message received by the NET network module 803, or via another 80N communication module. The NET 803 network module allows the connection of the server 800 to one or more communication networks. The network module 803 typically allows the connection of the server 800 to the Internet. The network module 803 allows the server 800 to send, respectively to receive, frames intended for, respectively coming from, one or more connected objects, for example the connected object 101, the frames passing through one of the gateways 120, 12p, ..., 12N.
The processor CPU 801 is capable of executing instructions loaded in the memory MEM 802, for example from the storage module STCK 804 or from a communication network via the network module NET 803, or from another communication module 80N for example. When the server 800 is powered up, the processor CPU 801 is capable of reading and executing instructions from the memory MEM 802. These instructions form a computer program causing the implementation, by the processor CPU 801, of all or part of the methods and steps described above. Thus, all or part of the methods and steps described above can be implemented in software form by execution of a set of instructions by a programmable machine, such as a DSP (“Digital Signal Processor” in English) or a microcontroller . All or part of the methods and steps described here can also be implemented in hardware form by a dedicated machine or component, such as an FPGA (“Field-Programmable Gâte Array” in English) or an ASIC (“ApplicationSpecific Integrated Circuit” in English). The server 800 is typically a so-called "LNS" server ("LoRa Network Server" in English), that is to say a server used in a communication network conforming to the LoRa ™ standard.
The server 800 is adapted to implement all or part of the steps of the method 200 described in Figs. 2, 3 and 4, as well as the methods described in Figs. 5, 6 and 7, making it possible to select a gateway from a plurality of gateways for the transmission of a frame to an electronic device of a communication network known as a “long range wide area network” according to the first embodiment of the 'invention. The server 800 is also suitable for implementing all or part of the steps of the method making it possible to select a gateway from a plurality of gateways for the transmission of a frame to an electronic device of a so-called "network" communication network extended to long range ”according to the second embodiment of the invention, method described below and in FIGS. 9 and 10.
In the second embodiment of the invention, unlike the first embodiment of the invention, each gateway 120, 12p, ..., 12N is capable of transmitting several frames simultaneously on different frequencies, frequencies possibly included in different frequency sub-bands. In addition, a new frame to be scheduled for transmission must not overlap another frame already scheduled for transmission on the same frequency. Likewise, the credit in cyclic ratio must be sufficient not only at the start of the transmission of a frame, as in the first embodiment, but also during the entire transmission time of the frame to be scheduled for transmission, c 'ie during the period' d '. It is therefore theoretically necessary to calculate a credit in cyclic ratio at each instant over the entire duration "d" of transmission of a frame to be scheduled for transmission, which requires a processing time for the central server 110 potentially very long. This processing time may be too long to be compatible with a selection of one of the gateways 120, 12p, ..., 12N within a period compatible with compliance in fine with the response time.
In order to preserve a processing principle similar to the first embodiment of the invention, a credit in cyclic ratio is determined for each frequency "f" of a frequency sub-band "j", and this for each sub-band of frequency "j". In other words, it is decided to assign a duty cycle to be observed for each frequency of a frequency sub-band. This allocation of a duty cycle for each frequency "f" of a frequency subband "j" is determined so as to respect the duty cycle of each frequency subband "j". Thus, "C (j, f, t)" corresponding to the duty cycle for the frequency "f" of the frequency sub-band "j" at the time "t", we define:
CC, f, 0) = COQ, f) = p (j, f). 3600000.DC (j);
“DCQ)” is the duty cycle to be respected, that is to say the ratio between the sum of the times of transmission of frames and the time of non-transmission of the gateway for the carrier frequencies included in sub-band "j"; DCQ) is expressed as a percentage.
"COQ, f)" is a maximum credit in cyclic ratio, expressed for an arbitrary reference period of one hour (3600 seconds) for the frequency "f" of the frequency subband "j". The parameters "p (j, f)" define a weighting, such that:
p (j> D = 1 f e sub-band (j)
With the value of p (j, f) between "0" and "1".
We thus have:
CO (j, f) = COQ) f e sub-band (j)
For example, "p (j, f) = 1 / NbFreq", with "NbFreq" equal to the number of frequencies "f" included in the frequency subband "j".
Each time one of the gateways 120, 12p, ..., 12N transmits a frame on a frequency "f" of a frequency sub-band "j", its credit in cyclic ratio is equal to:
C (j, f, Tfin) = C (j, f.TStart) - (l - DC (y)). D; with:
"Tstart" the start time of transmission of the frame, "Tfin" the end time of transmission of the frame, "d" the duration of transmission of the frame, "DC (j)" is the duty cycle to be observed for the frequency sub-band "j".
The method allowing the selection, by a central server 110 of a communication network 100 known as “wide area network with long range”, of a gateway among a plurality of gateways 120, 12p, ..., 12N to transmit a frame to an electronic device 101 in response to a frame sent by this electronic device 101, according to the second embodiment of the invention is similar to the selection method described in Figs. 2, 3 and 4 and corresponding to the first embodiment, except that steps 304, 305 and 310, respectively 404, 405 and 406, are different:
- for steps 304 and 404, verification of any simpler frame overlap since it is limited to an overlap with a frame already planned on the single transmission frequency,
- for steps 305, 310, 405 and 406, the use of a credit in cyclic ratio by frequency "f" in addition to the credit in cyclic ratio for a frequency sub-band "j".
The value of the duty cycle (or credit) on the frequency “f” of the frequency sub-band “j” of one of the gateways 120, 12p, ..., 12N at an instant “T + t” with respect to the value of the duty cycle at the instant “T” is expressed by:
C (j, f, T + t) = mm (C0 (j, f); C (j, f, T) + t - (2 - DC (j)). Yk = i Listd (J>
with:
"C (j, f, t)" the value of the duty cycle for the frequency "f" of the sub-band "j" at the instant "t", "min (a, b)" function selecting the minimum value between the arguments "a" and "b", "CO (j, f)" a maximum value of the duty cycle for the frequency "f" of the sub-band "j", expressed for an arbitrary reference period of one hour (3600 seconds), as described above, “DC (j)” is the duty cycle to be observed for the frequency sub-band “j”, that is to say the ratio between the sum of the frame transmission times and the gateway non-transmission time for the carrier frequencies included in the sub-band "j"; DC (j) is expressed as a percentage.
"Listd (j, f, k)", similarly to "Listd (j, k)" previously described, corresponds to the duration of transmission, by the gateway considered, of a frame "k" scheduled on the frequency "F" of the sub-band "j", "N" corresponds to the total number of frames scheduled for transmission by the gateway considered on the sub-band "j" until the instant "T +1".
Fig. 9 schematically illustrates a method 900 for updating frame transmission planning data for a gateway 120, 12p, ..., 12N included in a communication network known as a “long range wide area network”, according to a second mode for carrying out the invention.
The method 900 is generally similar to the method 500 described in FIG. 5, with the notable exception that:
- "ListTrx (i, j, f)" replaces the variable "ListTrx (i, j)" used in Fig. 5,
- "Listd (j, f, k)" replaces the variable "Listd (i, j)" used in Fig. 5,
- the calculation of C (j, f, Tref) replaces the calculation of C (j, Tref) used in Fig. 5,
- "Tc (j, f)" replaces "Tc (j)" used in Fig. 5.
Thus, “ListTrx (i, j, f)” corresponds to the transmission time of the “i” -th frame to be transmitted on the frequency “f” of the frequency sub-band “j” by said gateway and “Listd (i, j, f) ”to the duration of said“ i ”-th frame for the frequency“ f ”of the frequency subband“ j ”.
Step 901 corresponds to the loading of the data corresponding to the gateway for which the duty cycle for the frequency "f" of the sub-band "j" is to be updated in the memory of the central server 110. This data can be recorded on the central server 110 itself. The value of a variable "i" is initialized to "1" before going to step 902.
In step 902, the central server 110 determines whether "i" has exceeded the number of elements included in the list "ListTrx (j, f)" comprising all the frames scheduled for the gateway considered on the frequency "f" of the sub-band "j". If "i" is less than the number of frames scheduled for transmission on the frequency "f" of the frequency subband "j", then the central server 110 goes to step 903. Otherwise, it goes to step 907.
In step 903, the central server 110 determines whether the current time "t", corresponding to the local time of the central server 110, possibly synchronized via NTP, is less than the transmission planning time of the frame "i" on the frequency "f" of the frequency sub-band "j". If the frame is scheduled for a subsequent or simultaneous transmission at the current time "t", that is to say if "t + ListTrx (i, j, f)" then the central server 110 goes to step step 907. If on the contrary “t> ListTrx (i, j, f)”, then the central server 110 goes to step 904.
Step 903 makes it possible to determine whether the current time "t" can correspond to a moment of transmission of a frame "i". Step 904 makes sure that the current time is after the end of transmission of the frame "i". In other words, if "ListTrx (i, j, f) + Listd (i, j, f) + t", then the current time "t" is after the end of transmission of the frame "i", transmitted at “ListTrx (i, j, f)” time and having a “Listd (i, j, f)” transmission duration. The central server 110 then goes to step 908 in order to increment the value of "i" by "1". Then, following step 908, the central server 110, after having checked in a new step 902 that the number of frames has not been exceeded, starts again step 903 with the next frame. If on the contrary “ListTrx (i, j, f) + Listd (i, j, f)> = t”, knowing that the central server 110 has determined during step 903 that “t> ListTrx (i, j, f) ", this means that the current time" t "corresponds to a time of transmission of the frame" i ". In this case, in a next step 905, the central server 110 stores "N = i - 1". Then in a step 906, the central server 110 defines a variable "Tref", corresponding to a reference time for the calculation of the duty cycle, with "Tref = t". In other words, in step 906, the central server 110 defines the reference time "Tref" as being equal to the time "ListTrx (i, j, f)" corresponding to the transmission of the frame "i" on the frequency "F" of the frequency sub-band "j". The "N" -th frame of the list "ListTrx (j, f)" corresponds to the last frame scheduled for transmission by the gateway considered before the reference time "Tref". Thus, these “N” frames will have to be considered for the calculation of the duty cycle on the frequency “f” of the frequency sub-band “j”.
In step 907, the reference time "Tref" is defined equal to the current time "t". This corresponds to a situation where the current time does not correspond to a moment of transmission of an "i" frame.
Following steps 906 and 907, the central server 110 goes to step 910. During step 910, the central server 110 determines the value of the variable "Tc (j, f)", "Tc (j, f ) ”Corresponds to the last reference time used during the previous iteration of the update process 900 for the gateway considered for the frequency“ f ”of the frequency sub-band“ j ”. During the first iteration of the method 900, the value of "Tc (j, f)" is defined equal to "zero", default value. If "Tc (j, f) = 0", then the central server 110 goes to step 911 in order to determine if frames are scheduled for transmission before the reference time "Tref". In other words, if "N = 0", then, in a step 913, the central server 110 defines "Tc (j, f) = Tref". In other words, no frame being scheduled for transmission before the reference time "Tref", the value of "Tc (j, f)" can be set to "Tref" without modifying the value of the duty cycle, since the latter is already at its maximum value. If on the contrary “N” is different from “zero”, this means that the frames to be sent must be taken into account for the calculation of the duty cycle, and, in a step 912, the central server 110 defines “Tc (j, f ) = ListTrx (l, j, f) ”in order to start the calculation of the duty cycle on transmission of the first frame.
Following step 912 or 913, or else if in step 910 "Tc (j, f)" is different from "zero", the central server 110 goes to step 920. Step 920 corresponds to the step of calculating the duty cycle “C (j, f, Tref)”:
NOT
C (j, f, Tref) = min (C0Ç, /); ¢ 7 (/, /, 77: (/, /) + Tref - Tc (j, f) - (2 - DC (j)) ^ Listd (j, k, f) fc = i
In a next step 912, the central server 110 updates the frame transmission planning data for the gateway considered for the frequency "f" of the frequency sub-band "j". This update includes the deletion of the first "N" elements from the lists "ListTrx (j, f)" and "Listd (j, f)" for the frequency "f" of the frequency sub-band "j". The central server 110 stores the reference time "Tref" and the duty cycle for this reference time for a future iteration, that is to say:
"Tc (j, f)" takes the value "Tref", and, "C (j, f, Tc (j))" takes the value "C (j, f, Tref)", for later use of these two updated values of "Tc (j, f)" and "C (j, f, Tc (j))" in a new iteration of the method 900 for the gateway considered for the frequency "f" of the sub-band of frequency "j".
FIG. 10 schematically illustrates a method 1000 for verifying that a frame to be transmitted can be inserted in the planning of frames to be transmitted from a gateway 120, 12p, ..., 12N, according to the second embodiment of the invention.
The method 1000 is generally similar to the method 600 described in FIG. 6, with the notable exception that:
- "ListTrx (i, j, f)" replaces the variable "ListTrx (i, j)" used in Fig. 6,
- "Listd (j, f, k)" replaces the variable "Listd (i, j)" used in Fig. 6,
- the calculation of C (j, f, Tref) replaces the calculation of C (j, Tref) used in Fig. 6,
- "Tc (j, f)" replaces "Tc (j)" used in Fig. 6.
Another notable difference with the method 600 is that it is not useful in the case of the method 1000 to check a possible overlap of a frame to be scheduled for transmission on a frequency with another frame already scheduled for transmission on another different frequency. Only frames scheduled for transmission on the transmission frequency should be considered. In fact, according to this second embodiment, a gateway 120, 12p, ..., 12N can possibly transmit several frames simultaneously on different frequencies.
Thus, the variable "k" used in the method 600 described in FIG. 6 is not used in the process 1000 described here. Steps 602 and 607 of method 600 have no equivalent in method 1000.
The method 1000 illustrated in FIG. 10 corresponds to the equivalents of steps 304 or 404 of the method for a gateway "p" having to plan the transmission of a frame on a frequency "f" included in a frequency sub-band "j" according to the second embodiment of the invention.
In a step 1001, the central server 110 finds the data for scheduling the transmission of frames for the gateway considered for the frequency "f" of the frequency subband "j". This data may have previously been retrieved by the central server 110.
In a step 1003, the central server 110 initializes, or reinitializes, the value of a variable "i" to "1". The central server 110 passes to a test 1004.
During step 1004, the central server 110 verifies that “i” is less than the number of frames scheduled for transmission on the frequency “f” of the frequency sub-band “j”, that is to say at number of elements in the ListTrx list (j, f) for the gateway "p". If so, the central server 110 proceeds to step 1005, if not, step 1008.
In step 1005, the central server 110 determines whether the transmission time of the second frame "Trx" is less than the transmission time "ListTrx (i, j, f)" of the scheduled frame "i" for the frequency "f" of the frequency sub-band "j". If yes, the central server 110 goes to step 1006, if not, it goes to step 1009. If "Trx" is less than the transmission time of the scheduled frame "i" for the frequency "f" of the frequency sub-band "j", this means that the second frame must be transmitted before the frame "i". It is then necessary to then check whether the delay between the time “Trx” and the start of the transmission of the frame “i” for the frequency “f” of the frequency sub-band “j” is sufficient for the transmission of the second frame knowing that the transmission duration of the second frame is "d".
This verification is done during step 1006. Thus, if "Trx + d" is greater than "ListTrx (i, j, f)", then there is not sufficient time for the emission of the second frame before the scheduled transmission of the frame "i" for the frequency "f" of the frequency subband "j", and the central server 110 goes to step 1020. Step 1020 corresponds to the fact that the gateway considered "P" is not available for transmission of the second frame. The method for selecting a gateway according to the second embodiment then continues with the equivalent of a step 306 in the case of a second priority frame, and with the equivalent of a step 407 in the case of 'a second non-priority frame.
Following step 1006, if “Trx + d” is less than “ListTrx (i, j, f)”, this means that the delay between “Trx” and the start of the transmission of the frame “i” for the frequency “f” of the frequency sub-band “j” is sufficient for the transmission of the second frame of duration “d”. The central server 110 then proceeds to step 1008.
During step 1008, the central server 110 stores for a variable "N" the value "i - 1", "N" corresponding to the last frame scheduled for transmission on the frequency "f" of the frequency sub-band "J" before the second frame, or, in other words, the planned frame, on the frequency "f" of the frequency sub-band "j", to be transmitted just before the second frame. The central server 110 then goes to step 1015.
During step 1009, the central server 110 determines whether the transmission time of the second frame "Trx" corresponds to a moment during which the gateway is scheduled for the transmission of the frame "i" for the frequency "f ”Of the frequency sub-band“ jj ”of duration“ Listd (i, j, f) ”. If "Trx" is less than "ListTrx (i, j, f) + Listd (i, j, f)", knowing from step 1005 that "Trx" is greater than "ListTrx (i, j, f)" , then “Trx” corresponds to a moment of transmission of the frame “i” for the frequency “f” of the frequency sub-band “j” and the central server 110 goes to step 1020. Otherwise, the server central 110 goes to step 1010, corresponding to the incrementation of the variable "i", with "i = i + 1", then returns to step 1004.
权利要求:
Claims (8)
[1" id="c-fr-0001]
1) Method (200) for a communication system (100) comprising an electronic device (101) and a plurality of gateways (120, 12p, ..., 12N), the electronic device and each gateway being adapted to transmit and receive frames on a radio frequency band, each gateway being connected to the same central server (110), a first frame being transmitted by the electronic device intended for the central server, the frame comprising an identifier of the electronic device, each gateway receiving said frame and transmitting the received frame, in association with an identifier of the gateway, to the central server, a response time being predefined to respond to the first frame, the method allowing the selection by the central server of a gateway from among the plurality of gateways for transmitting a second frame to the electronic device in response to the first frame, the method being ex run by the central server and being characterized in that it includes the steps of:
- receive the first frame from a first gateway,
- determine a transmission time and a duration of the second frame to be transmitted in response,
- create a list in association with the identifier of the electronic device, the list comprising the identifier of the first gateway,
- trigger a waiting period during which, if the central server receives another frame sent by the electronic device from another gateway, then:
add the identifier of the other gateway that transmitted the frame in the list,
- at the end of the waiting period, choose at least one gateway whose identifier is included in the list, and, for this gateway:
- retrieve frame transmission planning data by said gateway, and,
- check whether the selection criteria, functions of the transmission time and the duration of the second frame as well as the gateway frame transmission planning data, are fulfilled, if the selection criteria are fulfilled, then select said gateway for sending the second frame in response to the first frame to the electronic device.
[2" id="c-fr-0002]
2) Method according to claim 1, each gateway transmitting a frame received in association with an identifier of the gateway and an indication of the reception power of the frame, the method being characterized in that:
- during the step of adding an identifier of a gateway in the list, the indication on the reception power is added in association with the identifier of the gateway, and,
- during the step of choosing a gateway from the list, the choice depends on the reception power associated with each identifier.
[3" id="c-fr-0003]
3) Method according to claim 2, the method being characterized in that, if, during the waiting time, the central server receives a frame whose reception power is less than a predetermined value, then said frame is ignored for the continuation of the process.
[4" id="c-fr-0004]
4) Method according to claim 2 or 3, the frame transmission planning data for each gateway comprising a parameter, called duty cycle, said parameter being a maximum ratio of a time spent by said gateway in transmitting frames on a given period, each gateway in the list being successively chosen to check the selection criteria, the method being characterized in that selecting the gateway comprises a step of determining the value of the duty cycle at the time of the transmission of the second frame for a gateway and in that the selection is a function of the determined duty cycle value.
[5" id="c-fr-0005]
5) Central server (110) for a communication system (100) comprising an electronic device (101) and a plurality of gateways (120, 12p, ..., 12N), the electronic device and each gateway being adapted to transmit and receive frames on a radio frequency band, each gateway being connected to the central server, a first frame being transmitted by the electronic device intended for the central server, the frame comprising an identifier of the electronic device, each gateway receiving said frame and transmitting the frame received, in association with an identifier of the gateway, to the central server, a response time being predefined to respond to the first frame, the central server being characterized in that it is suitable, in order to select a gateway from the plurality of gateways for transmitting a second frame to the electronic device in response to the first frame, for:
- receive the first frame from a first gateway,
- determine a transmission time and a duration of the second frame to be transmitted in response,
- create a list in association with the identifier of the electronic device, the list comprising the identifier of the first gateway,
- trigger a waiting period during which, if the central server receives another frame sent by the electronic device from another gateway, then:
add the identifier of the other gateway that transmitted the frame in the list,
- at the end of the waiting period, choose at least one gateway whose identifier is included in the list, and, for this gateway:
- retrieve frame transmission planning data by said gateway, and,
- check whether the selection criteria, functions of the transmission time and the duration of the second frame as well as the gateway frame transmission planning data, are fulfilled, if the selection criteria are fulfilled, then select said gateway for sending the second frame in response to the first frame to the electronic device.
[6" id="c-fr-0006]
6) Communication system (100) comprising an electronic device (101) and a plurality of gateways (120, 12p, ..., 12N), the electronic device and each gateway being adapted to transmit and receive frames on a band of radio frequency, each gateway being connected to the same central server (110), a first frame being transmitted by the electronic device intended for the central server, the frame comprising an identifier of the electronic device, each gateway receiving said frame and transmitting the received frame , in association with an identifier of the gateway, to the central server, a response time being predefined to respond to the first frame, the central server being characterized in that it is suitable, in order to select a gateway from among the plurality of gateways for transmitting a second frame to the electronic device in response to the first frame, for:
- receive the first frame from a first gateway,
- determine a transmission time and a duration of the second frame to be transmitted in response,
- create a list in association with the identifier of the electronic device, the list comprising the identifier of the first gateway,
- trigger a waiting period during which, if the central server receives another frame sent by the electronic device from another gateway, then:
add the identifier of the other gateway that transmitted the frame in the list,
- at the end of the waiting period, choose at least one gateway whose identifier is included in the list, and, for this gateway:
- retrieve frame transmission planning data by said gateway, and,
- check whether the selection criteria, functions of the transmission time and the duration of the second frame as well as the gateway frame transmission planning data, are fulfilled, if the selection criteria are fulfilled, then select said gateway for sending the second frame in response to the first frame to the electronic device.
[7" id="c-fr-0007]
7) Computer program, characterized in that it comprises instructions for implementing, by a processor (801), the method allowing the selection of a gateway from a plurality of gateways for the transmission of a frame and being executed by a server comprising the processor, according to any one of claims 1 to 4, when the computer program is executed by the processor.
[8" id="c-fr-0008]
8) Recording medium on which the program according to the preceding claim is stored.
1/10
100
类似技术:
公开号 | 公开日 | 专利标题
EP3533183B1|2020-08-05|Method for selecting a gateway for transmitting a frame
EP2638528B1|2018-08-01|Method and system for transmission and reception of data from an aircraft black box
EP1217778B1|2005-03-09|Data communication method and apparatus using automatic repeat request
WO2017129447A1|2017-08-03|Synchronisation method for a node in a cellular network
EP2156597B1|2018-10-03|Method of receiving data packets and corresponding method of transmission
EP2683123A1|2014-01-08|Flow management gateway for machine-to-machine network
FR2916598A1|2008-11-28|METHOD FOR TRANSMITTING DATA PACKETS AND CORRESPONDING RECEPTION METHOD
EP3146734B1|2019-10-23|Method for managing speaking turns over a communication channel in the context of simplex calls
EP2939450B1|2016-10-19|Transmission of a multimedia message doubled with the transmission of a text message
EP3510713B1|2020-10-28|Method for detecting retransmission of a frame
EP3437406B1|2019-12-11|Method for managing the allocation of carrier frequencies
EP3322134B1|2020-12-30|Method for accessing a shared communication medium
EP2854467A1|2015-04-01|System and method for sharing distributed capacity in an ad-hoc network
WO2019185552A1|2019-10-03|Communication method
EP3777308A1|2021-02-17|Communication method
EP2589251B1|2014-04-09|Method of allocating resources to mobile terminals
EP3588827B1|2021-04-28|Method for quick acknowledgement of a frame
EP3723318B1|2022-02-09|Method and device for controlling a data transmission mode used by a vehicle for communicating
EP3024181A1|2016-05-25|Data communication method between a roaming wireless device and a network access gateway
FR3095565A1|2020-10-30|Communication methods between a terminal and a base station, terminal, base station and corresponding computer program.
FR3100682A1|2021-03-12|PROCESS FOR RELAYING A ROUTE DISCOVERY REQUEST IN A MESH COMMUNICATION NETWORK
FR3067195A1|2018-12-07|METHOD OF AUTOMATICALLY SELECTING A FREQUENCY BAND
WO2019077247A1|2019-04-25|Method of exchanging data frames, and wi-fi stations associated therewith
FR2932934A1|2009-12-25|Reallocatable time intervals notifying method for wireless mesh communication network, involves notifying identified time intervals to part of set of nodes, and constituting reallocatable time intervals
同族专利:
公开号 | 公开日
US10581639B2|2020-03-03|
US20190280897A1|2019-09-12|
WO2018077790A1|2018-05-03|
EP3533183B1|2020-08-05|
CN110115002B|2020-07-17|
CN110115002A|2019-08-09|
FR3058293B1|2019-05-10|
EP3533183A1|2019-09-04|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
WO2016005371A1|2014-07-11|2016-01-14|Sagemcom Broadband Sas|Relay residential gateway between a terminal device and a server|
ID24678A|1997-06-06|2000-07-27|Salbu Res & Dev Pty Ltd|OPERATION METHOD OF A MULTI STATION NETWORK|
US20040181467A1|2003-03-14|2004-09-16|Samir Raiyani|Multi-modal warehouse applications|
KR100626676B1|2004-07-15|2006-09-25|삼성전자주식회사|Method prefix assignment in Ad-hoc network|
WO2007064879A2|2005-12-01|2007-06-07|Firestar Software, Inc.|System and method for exchanging information among exchange applications|
CN105009642B|2013-03-29|2019-01-01|富士通株式会社|Communication means, signal procedure and node apparatus|
US9870395B2|2014-03-21|2018-01-16|Pearson Education, Inc.|Conditioned transmission of query responses and connection assessments|
US20160255139A1|2016-03-12|2016-09-01|Yogesh Chunilal Rathod|Structured updated status, requests, user data & programming based presenting & accessing of connections or connectable users or entities and/or link|FR3084233B1|2018-07-18|2022-01-28|Sagemcom Energy & Telecom Sas|DEVICE FOR TRANSPORTING LORA FRAMES OVER A PLC NETWORK.|
CN111356210A|2018-12-20|2020-06-30|阿里巴巴集团控股有限公司|Downlink base station selection method, device, equipment and storage medium|
CN110492978B|2019-08-13|2020-04-24|翱捷科技有限公司|LoRaWAN system capable of achieving rapid confirmation and implementation method thereof|
CN110690953B|2019-12-06|2020-04-24|武汉慧联无限科技有限公司|Downlink gateway selection method, device and computer storage medium|
法律状态:
2017-09-20| PLFP| Fee payment|Year of fee payment: 2 |
2018-05-04| PLSC| Search report ready|Effective date: 20180504 |
2018-09-19| PLFP| Fee payment|Year of fee payment: 3 |
2019-09-19| PLFP| Fee payment|Year of fee payment: 4 |
2020-09-17| PLFP| Fee payment|Year of fee payment: 5 |
优先权:
申请号 | 申请日 | 专利标题
FR1660505A|FR3058293B1|2016-10-28|2016-10-28|METHOD FOR SELECTING A GATEWAY FOR TRANSMITTING A FRAME|
FR1660505|2016-10-28|FR1660505A| FR3058293B1|2016-10-28|2016-10-28|METHOD FOR SELECTING A GATEWAY FOR TRANSMITTING A FRAME|
US16/345,892| US10581639B2|2016-10-28|2017-10-23|Method for selecting a gateway for sending a frame|
PCT/EP2017/076981| WO2018077790A1|2016-10-28|2017-10-23|Method of selecting a gateway for sending a frame|
EP17791652.5A| EP3533183B1|2016-10-28|2017-10-23|Method for selecting a gateway for transmitting a frame|
CN201780081359.8A| CN110115002B|2016-10-28|2017-10-23|Method for selecting gateway for transmitting frame|
[返回顶部]